<?php
require_once "../config/config.php";

class DaoUtils {
	var $db;
	
	public function __construct(){
		$config = new config();
		$this->db = $config->getConfig();
	}
	
	public function selectRecords($query) {
		
		$records = array();

		// preparazione della query
		$sql = $this-> db -> prepare($query);

		// esecuzione della query
		$sql -> execute();

		// creazione di un array dei risultati
		$records = $sql -> fetchAll();

		return $records;
	}

	public function selectRecord($query) {
		$record = null;
		$records = $this->selectRecords($query);
		
		if (!empty($records)) {
			$record = $records[0];
		}

		return $record;
	}

	public function insert($query) {
		// preparazione della query
		$sql = $this-> db -> prepare($query);

		// esecuzione della query
		return $sql -> execute();
	}
	
	public function update($query) {
		// preparazione della query
		$sql = $this-> db -> prepare($query);

		// esecuzione della query
		return $sql -> execute();
	}
	
	public function delete($query) {
		// preparazione della query
		$sql = $this-> db -> prepare($query);

		// esecuzione della query
		return $sql -> execute();
	}
	
	public function escape($value) {
		$search = array("\\", "\x00", "\n", "\r", "'", '"', "\x1a");
		$replace = array("\\\\", "\\0", "\\n", "\\r", "\'", '\"', "\\Z");

		return str_replace($search, $replace, $value);
	}

}
?>